Mobile telecommunications devices, such as smart-phones, tablets and laptops, commonly have the ability to participate in a cellular telecommunications network typified by high-power/long distance communications networks over licensed spectrum, and alternatively over low-power/short distance communications networks, over unlicensed spectrum, such as a wireless point-to-point communications network. A typical example is a smart-phone that has a data connection over a 3G or 4G cellular plan, but at the same time may participate on a wireless point-to-point communications network (e.g., a Wireless Fidelity (Wi-Fi) (IEEE 802.11) network and/or a Bluetooth (IEEE 802) network).
Firmware Over-the-Air (FOTA) may be used for upgrades of mobile telecommunications devices. FOTA provides end-user benefits such as updating firmware software with bug fixes, providing new functionality, improvements, etc. FOTA may be implemented by various mechanisms: Push; Poll; and Pull. Each of these mechanisms have individual strengths and weaknesses, as discussed below:                Push: FOTA update is initiated at a push-server of a telecommunications network. The push-server needs to identify which mobile telecommunications devices may require a specific firmware update. (Frequently, firmware updates are device/device-manufacturer specific. So, not all telecommunications device of a telecommunications network may require a specific firmware update.) The push-server needs to identify which of the identified mobile telecommunications devices failed to successfully download the specific firmware update and reschedule follow-up updates. In some cases, the push server may need to reschedule multiple follow-up update. For example, if the average download success rate is 80%, then, on the average, the push-server will need to schedule at least five download sessions to successfully update 99.968% of the identified telecommunications devices. For various reasons, some of the identified telecommunications devices may be difficult to update. For example, they may be primarily located in zones of low coverage or low quality of service, and these telecommunications devices may require many more update follow-ups than the average telecommunications device.        Poll: The telecommunications device can periodically poll the telecommunications network for firmware updates. However, polling may cause network congestion or unnecessary network traffic. For example, firmware updates may be relatively rare (e.g., once every 6 months) and having the telecommunications device poll for updates once every day would result in a lot of unnecessary network traffic. However, the lower the poll frequency, the longer it can take to update the telecommunications devices. Even if the telecommunications devices poll once every three days and updates occur twice per year, then most of the polls (98.5%) may not be necessary. Further, for the average telecommunications device, the number of firmware updates diminishes over time (e.g., there may be more updates in the first year that a telecommunications device is brought into the market than in the second year). This means that during the lifecycle of a telecommunications device, the telecommunications device may need updates less frequently. In some telecommunications networks, FOTA polls can contribute around 10 TB of network traffic, and approximately 9.9 TB may be associated with unnecessary network traffic.        Pull: A user initiates download of firmware updates. However, pulling may require the user to be technically savvy and may require the user to be diligent. Typically, some firmware updates are critical/necessary for network security/stability and it may be highly desirable for all telecommunications devices to have the current version of firmware. Such cannot be assured with a pull system that relies on the user to initiate downloads.        